package com.relax.mybatis.constant;

/**
 * @author relax
 * @date 2022/07/05
 * @desc 加密算法
 */
public enum Algorithm {

    /**
     * 32 位 md5 算法
     */
    MD5_32,
    /**
     * 16 位 md5 算法，md5 加密后取中间 16 位
     */
    MD5_16,
    /**
     * AES 对称算法，AES/ECB/PKCS5Padding
     */
    AES,
    /**
     * 国密 SM2 非对称加密算法，基于 ECC
     */
    SM2,
    /**
     * 国密 SM3 消息摘要算法，可以用 MD5 作为对比理解
     */
    SM3,
    /**
     * 国密 SM4 对称加密算法，无线局域网标准的分组数据算法，SM4/ECB/PKCS5Padding
     */
    SM4,
    /**
     * 非对称加密算法
     */
    RSA,
    /**
     * 64 个字符来表示任意二进制数据算法
     */
    BASE64,
    /**
     * 混合算法
     */
    PBEWithMD5AndDES,
    /**
     * 混合算法
     */
    PBEWithMD5AndTripleDES,
    /**
     * 混合算法
     */
    PBEWithHMACSHA512AndAES_256,
    /**
     * 混合算法
     */
    PBEWithSHA1AndDESede,
    /**
     * 混合算法
     */
    PBEWithSHA1AndRC2_40;

}
